草庐IT

C++ 进程管理

全部标签

windows - 为什么 WmiPrvSE.exe 持有我进程的作业对象的句柄?

我有一个生成多个子“工作进程”的.NET应用程序。我正在使用Windows作业对象API和JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE设置来确保在父进程终止时子进程总是被杀死。但是,我观察到许多孤立进程在父进程关闭后仍在机器上运行。使用ProcessExplorer,我可以看到它们仍然正确分配给作业,并且作业配置了正确的“作业关闭时终止”设置。JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE的文档指出:“当作业的最后一个句柄关闭时,导致与该作业关联的所有进程终止。”这似乎意味着Job的句柄在某处仍然打开...我搜索了我的Job对象的句柄,并在

windows - 每个用户进程的 CPU、磁盘和内存使用情况

我一直在网上搜索我的问题的答案,但我只能找到部分解决方案。基本上,我希望得到一个文本、csv等文件,其中包含每个用户进程的cpu、磁盘i/o和内存使用情况(甚至可能是网络)。使用PowerShell获取每个进程的使用情况有很多结果,但我想更深入地查看每个用户的使用情况。Windows任务管理器(至少在8和10中)在“用户”选项卡下几乎完全按照我的需要显示了这些信息。有人可以帮助我开始使用PowerShell编写脚本吗? 最佳答案 这是我正在使用的代码。当我在一两分钟后运行此脚本时,它返回一个错误,提示找不到$.GetOwner()并

windows - 是否可以为 Windows 10 资源管理器创建自己的预览?

文件资源管理器中的Windows10预览Pane对我来说似乎毫无用处,我通常会隐藏它,但在浏览我所有的目录时,我认为如果我能为事物编写自己的预览会非常方便。具体来说,我想做的是写一些东西来预览目录。如果它们是git存储库,它可能会显示最后几次提交。如果该目录有一个README.md文件,它可以显示格式化版本。稍微搜索了一下,我没有找到任何关于创建类似内容的信息,Windows是否允许这样做? 最佳答案 您需要创建并注册shell扩展。文档,可能你需要实现这个接口(interface):IPreviewHandler一些示例:http

c# - 当*任何*进程启动时得到通知,然后卡住/暂停/挂起它

当每个进程在我的机器上启动时,我试图监控它。在进程启动后对其进行监控对于此类来说是没有问题的:classProcessHelper{ManagementEventWatcherprocessListener;publicProcessHelper(){processListener=newManagementEventWatcher(newWqlEventQuery("SELECT*FROMWin32_ProcessStartTrace"));processListener.EventArrived+=newEventArrivedEventHandler(ProcessListene

c++ - Windows 任务管理器中的哪个函数用于接收的字节数/间隔?

我写了一个应用程序,它使用GetIfTable函数来显示每秒收到的字节数,但它在windows7上不起作用。1-Windows任务管理器中使用哪个函数来显示接收的字节数/间隔?2-是否有任何库可以获取有关连接过程等信息?3-您知道任何开源应用程序,例如ProcessExplorer或glint吗? 最佳答案 任务管理器显示来自Windows性能计数器的信息。“网络接口(interface)”性能计数器对象的实例通常是计算机的以太网适配器。从这些数据中,它可以获得每秒发送/接收的数据包、每秒发送/接收的字节数——与任务管理器可以显示的

c++ - 向其他进程发送消息

for(inti=0;i我正在创建n个进程来像这样在给定的文件中查找字符串,并且在我的模块中(wchich在文件中查找给定的字符串)我想向其他n-1个进程发送消息以退出while(file>>readout){if(readout==search){cout我从哪里可以获得那些其他进程的句柄? 最佳答案 请看我的PostThreadMessagetoConsoleApplication.我创建它是因为肯定可以向控制台程序发送消息,我们只需要创建一个消息循环,就像可以从控制台程序显示一个窗口一样。注意PostThreadMessage

我可以使用自动要求管理员权限的 GCC 编译 C 程序吗?

我想编译一个程序,在先前执行的程序退出后简单地终止任务。如果没有管理员权限,这是行不通的。我知道您可以从可执行文件属性的兼容性选项卡中选择“以管理员身份运行程序”,但如果可能的话,我想在分发程序时避免这样做。我在Windows8.1上使用GCC4.8.1进行编译。编辑:大约5年后我可能会选择system("tskill")在这种情况下,因为它不需要用户进程的管理员权限。或者使用runas/vbscript进行一些破解。 最佳答案 看起来这可能已经被弄清楚了——你可能想看看这里是否有帮助:Embedmanifestfiletorequ

python - 将 Python 标准 IO 暴露给子进程

在Python3.5.1上,我有以下内容:output=subprocess.check_output(cmd).decode(encoding="UTF-8")这会调用正确调用的命令cmd。cmd中的C++14代码如下所示:HANDLEhandle=GetStdHandle(STD_OUTPUT_HANDLE);assert(handle!=INVALID_HANDLE_VALUE);//Alwayspassesassert(handle!=nullptr);//AlwayspassesCONSOLE_SCREEN_BUFFER_INFOcsbi;BOOLresult=GetCons

c# - Windows 10应用-物联网系统管理能力

我们有Windows10应用程序,我们正在尝试更改系统上的时区。我找到了有关将IOT扩展包含到项目中的文档,这将提供基本的系统管理功能。https://msdn.microsoft.com/en-us/windows/uwp/packaging/app-capability-declarationshttps://msdn.microsoft.com/en-us/library/windows/apps/windows.system.timezonesettings.changetimezonebydisplayname到目前为止,我无法获得执行任何操作的权限(重启系统、更改时区等),

windows - 如何手动和/或以编程方式更改 modern.ie Windows 10 虚拟机 (VM) 的默认管理员用户名和密码?

意图我想使用从Microsoftmodern.ie下载的Windows10虚拟机(VM)网站Vagrant.虽然Microsoft提供了为Vagrant(s.picture01)准备的下载选项,但它实际上不能开箱即用,需要进一步使用configuration(e.g.asdescribedhere)。需要配置的一件事是用于引导的用户和密码。机器默认使用管理员用户IEUser和密码Passw0rd!启动。我想知道如何以两种不同的方式完成用户/密码的更改-手动(s.问题1)和编程(s.问题2)图片01:问题一我需要通过WindowsGUI执行哪些详细步骤才能“真正”更改管理员用户IEUse